import axios from 'axios';

const service = axios.create({
  baseURL: '/api', // 对应vite代理配置
  timeout: 5000,
  withCredentials: true, // 允许跨域请求携带Cookie
  headers: {
    'Content-Type': 'application/json'
  }
});

// 请求拦截器
service.interceptors.request.use(config => {
  // 打印请求信息用于调试
  // 添加跨域请求头
  config.headers['X-Requested-With'] = 'XMLHttpRequest';

  // 新增：添加Authorization请求头
  const token = localStorage.getItem('token');
  if (token && token.trim() !== '') {
    config.headers.authorization = `${token}`;
  }

  console.log('请求URL:', config.url);
  console.log('请求方法:', config.method);
  console.log('请求头:', config.headers);
  console.log('请求参数:', config.data);
  // 可添加token等认证信息
  return config;
});

// 响应拦截器将响应直接转换为response.data
service.interceptors.response.use(
  response => response.data,  // 这里导致只能访问后端返回的JSON数据，无法获取HTTP状态码
  error => { /* 错误处理 */ }
);

export default service;